// 主题配置文件 - 科研成果管理系统
// 支持多种主题切换

// 现代化深蓝紫色主题 (默认主题)
.theme-modern-purple {
  // 主色调
  --primary-color: #6366f1;
  --primary-light: #818cf8;
  --primary-dark: #4f46e5;
  --primary-lighter: #eef2ff;
  --primary-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);

  // 辅助色调
  --secondary-color: #8b5cf6;
  --secondary-light: #a78bfa;
  --secondary-dark: #7c3aed;
  --secondary-lighter: #f3f4f6;
  --secondary-gradient: linear-gradient(135deg, #a8edea 0%, #fed6e3 100%);

  // 状态色调
  --success-color: #10b981;
  --success-gradient: linear-gradient(135deg, #84fab0 0%, #8fd3f4 100%);
  --warning-color: #f59e0b;
  --warning-gradient: linear-gradient(135deg, #ffecd2 0%, #fcb69f 100%);
  --error-color: #ef4444;
  --error-gradient: linear-gradient(135deg, #ff9a9e 0%, #fecfef 100%);

  // 背景色系统
  --bg-primary: #ffffff;
  --bg-secondary: #f8fafc;
  --bg-page: #f1f5f9;
  --bg-hover: #eef2ff;
  --bg-glass: rgba(255, 255, 255, 0.25);
  --bg-glass-dark: rgba(15, 23, 42, 0.25);
}

// 经典蓝色主题
.theme-classic-blue {
  // 主色调
  --primary-color: #409eff;
  --primary-light: #66b1ff;
  --primary-dark: #337ecc;
  --primary-lighter: #ecf5ff;
  --primary-gradient: linear-gradient(135deg, #409eff 0%, #337ecc 100%);

  // 辅助色调
  --secondary-color: #909399;
  --secondary-light: #c0c4cc;
  --secondary-dark: #606266;
  --secondary-lighter: #f4f4f5;
  --secondary-gradient: linear-gradient(135deg, #909399 0%, #606266 100%);

  // 状态色调
  --success-color: #67c23a;
  --success-gradient: linear-gradient(135deg, #67c23a 0%, #5daf34 100%);
  --warning-color: #e6a23c;
  --warning-gradient: linear-gradient(135deg, #e6a23c 0%, #cf9236 100%);
  --error-color: #f56c6c;
  --error-gradient: linear-gradient(135deg, #f56c6c 0%, #f45656 100%);

  // 背景色系统
  --bg-primary: #ffffff;
  --bg-secondary: #f5f7fa;
  --bg-page: #f2f6fc;
  --bg-hover: #ecf5ff;
  --bg-glass: rgba(255, 255, 255, 0.25);
  --bg-glass-dark: rgba(64, 158, 255, 0.25);
}

// 绿色自然主题
.theme-nature-green {
  // 主色调
  --primary-color: #10b981;
  --primary-light: #34d399;
  --primary-dark: #059669;
  --primary-lighter: #d1fae5;
  --primary-gradient: linear-gradient(135deg, #10b981 0%, #059669 100%);

  // 辅助色调
  --secondary-color: #6b7280;
  --secondary-light: #9ca3af;
  --secondary-dark: #4b5563;
  --secondary-lighter: #f9fafb;
  --secondary-gradient: linear-gradient(135deg, #6b7280 0%, #4b5563 100%);

  // 状态色调
  --success-color: #10b981;
  --success-gradient: linear-gradient(135deg, #10b981 0%, #059669 100%);
  --warning-color: #f59e0b;
  --warning-gradient: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
  --error-color: #ef4444;
  --error-gradient: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);

  // 背景色系统
  --bg-primary: #ffffff;
  --bg-secondary: #f0fdf4;
  --bg-page: #ecfdf5;
  --bg-hover: #d1fae5;
  --bg-glass: rgba(255, 255, 255, 0.25);
  --bg-glass-dark: rgba(16, 185, 129, 0.25);
}

// 橙色活力主题
.theme-vibrant-orange {
  // 主色调
  --primary-color: #f59e0b;
  --primary-light: #fbbf24;
  --primary-dark: #d97706;
  --primary-lighter: #fef3c7;
  --primary-gradient: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);

  // 辅助色调
  --secondary-color: #6b7280;
  --secondary-light: #9ca3af;
  --secondary-dark: #4b5563;
  --secondary-lighter: #f9fafb;
  --secondary-gradient: linear-gradient(135deg, #6b7280 0%, #4b5563 100%);

  // 状态色调
  --success-color: #10b981;
  --success-gradient: linear-gradient(135deg, #10b981 0%, #059669 100%);
  --warning-color: #f59e0b;
  --warning-gradient: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
  --error-color: #ef4444;
  --error-gradient: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);

  // 背景色系统
  --bg-primary: #ffffff;
  --bg-secondary: #fffbeb;
  --bg-page: #fef3c7;
  --bg-hover: #fef3c7;
  --bg-glass: rgba(255, 255, 255, 0.25);
  --bg-glass-dark: rgba(245, 158, 11, 0.25);
}

// 深色主题
.theme-dark {
  // 主色调
  --primary-color: #818cf8;
  --primary-light: #a5b4fc;
  --primary-dark: #6366f1;
  --primary-lighter: #312e81;
  --primary-gradient: linear-gradient(135deg, #818cf8 0%, #6366f1 100%);

  // 辅助色调
  --secondary-color: #9ca3af;
  --secondary-light: #d1d5db;
  --secondary-dark: #6b7280;
  --secondary-lighter: #374151;
  --secondary-gradient: linear-gradient(135deg, #9ca3af 0%, #6b7280 100%);

  // 状态色调
  --success-color: #34d399;
  --success-gradient: linear-gradient(135deg, #34d399 0%, #10b981 100%);
  --warning-color: #fbbf24;
  --warning-gradient: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);
  --error-color: #f87171;
  --error-gradient: linear-gradient(135deg, #f87171 0%, #ef4444 100%);

  // 背景色系统
  --bg-primary: #1f2937;
  --bg-secondary: #111827;
  --bg-page: #0f172a;
  --bg-hover: #374151;
  --bg-glass: rgba(31, 41, 55, 0.25);
  --bg-glass-dark: rgba(15, 23, 42, 0.25);

  // 文字色系统
  --text-primary: #f9fafb;
  --text-regular: #e5e7eb;
  --text-secondary: #d1d5db;
  --text-placeholder: #9ca3af;
  --text-disabled: #6b7280;

  // 边框色系统
  --border-base: #374151;
  --border-light: #4b5563;
  --border-lighter: #6b7280;
  --border-extra-light: #9ca3af;
}

// 主题切换动画
.theme-transition {
  transition: all 0.3s ease-in-out;
}

// 主题切换器样式
.theme-switcher {
  position: fixed;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  z-index: 1000;
  background: var(--bg-primary);
  border: 1px solid var(--border-light);
  border-radius: var(--radius-lg);
  padding: var(--spacing-sm);
  box-shadow: var(--shadow-lg);

  .theme-option {
    width: 32px;
    height: 32px;
    border-radius: var(--radius-md);
    margin: var(--spacing-xs) 0;
    cursor: pointer;
    border: 2px solid transparent;
    transition: all var(--transition-fast);

    &:hover {
      transform: scale(1.1);
    }

    &.active {
      border-color: var(--primary-color);
      box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.2);
    }

    &.theme-modern-purple {
      background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);
    }

    &.theme-classic-blue {
      background: linear-gradient(135deg, #409eff 0%, #337ecc 100%);
    }

    &.theme-nature-green {
      background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    }

    &.theme-vibrant-orange {
      background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    }

    &.theme-dark {
      background: linear-gradient(135deg, #1f2937 0%, #111827 100%);
    }
  }
}
